﻿using System;
using System.Runtime.InteropServices;
using System.Text;

namespace Valve.VR
{
	// Token: 0x0200052F RID: 1327
	public class CVRScreenshots
	{
		// Token: 0x06001C8F RID: 7311 RVA: 0x00012019 File Offset: 0x00010219
		internal CVRScreenshots(IntPtr pInterface)
		{
			this.FnTable = (IVRScreenshots)Marshal.PtrToStructure(pInterface, typeof(IVRScreenshots));
		}

		// Token: 0x06001C90 RID: 7312 RVA: 0x00060C94 File Offset: 0x0005EE94
		public EVRScreenshotError RequestScreenshot(ref uint pOutScreenshotHandle, EVRScreenshotType type, string pchPreviewFilename, string pchVRFilename)
		{
			pOutScreenshotHandle = 0u;
			return this.FnTable.RequestScreenshot(ref pOutScreenshotHandle, type, pchPreviewFilename, pchVRFilename);
		}

		// Token: 0x06001C91 RID: 7313 RVA: 0x00060CBC File Offset: 0x0005EEBC
		public EVRScreenshotError HookScreenshot(EVRScreenshotType[] pSupportedTypes)
		{
			return this.FnTable.HookScreenshot(pSupportedTypes, pSupportedTypes.Length);
		}

		// Token: 0x06001C92 RID: 7314 RVA: 0x00060CE0 File Offset: 0x0005EEE0
		public EVRScreenshotType GetScreenshotPropertyType(uint screenshotHandle, ref EVRScreenshotError pError)
		{
			return this.FnTable.GetScreenshotPropertyType(screenshotHandle, ref pError);
		}

		// Token: 0x06001C93 RID: 7315 RVA: 0x00060D04 File Offset: 0x0005EF04
		public uint GetScreenshotPropertyFilename(uint screenshotHandle, EVRScreenshotPropertyFilenames filenameType, StringBuilder pchFilename, uint cchFilename, ref EVRScreenshotError pError)
		{
			return this.FnTable.GetScreenshotPropertyFilename(screenshotHandle, filenameType, pchFilename, cchFilename, ref pError);
		}

		// Token: 0x06001C94 RID: 7316 RVA: 0x00060D2C File Offset: 0x0005EF2C
		public EVRScreenshotError UpdateScreenshotProgress(uint screenshotHandle, float flProgress)
		{
			return this.FnTable.UpdateScreenshotProgress(screenshotHandle, flProgress);
		}

		// Token: 0x06001C95 RID: 7317 RVA: 0x00060D50 File Offset: 0x0005EF50
		public EVRScreenshotError TakeStereoScreenshot(ref uint pOutScreenshotHandle, string pchPreviewFilename, string pchVRFilename)
		{
			pOutScreenshotHandle = 0u;
			return this.FnTable.TakeStereoScreenshot(ref pOutScreenshotHandle, pchPreviewFilename, pchVRFilename);
		}

		// Token: 0x06001C96 RID: 7318 RVA: 0x00060D78 File Offset: 0x0005EF78
		public EVRScreenshotError SubmitScreenshot(uint screenshotHandle, EVRScreenshotType type, string pchSourcePreviewFilename, string pchSourceVRFilename)
		{
			return this.FnTable.SubmitScreenshot(screenshotHandle, type, pchSourcePreviewFilename, pchSourceVRFilename);
		}

		// Token: 0x040010FC RID: 4348
		public IVRScreenshots FnTable;
	}
}
